<!DOCTYPE html>
<html>
	<head>
		<meta charset="utf-8">
		<title></title>
	</head>
	<body>
		<!-- 1.如何产生闭包?
		  当一个嵌套的内部(子)函数引用了嵌套的外部(父)函数的变量(函数)时，就产生了闭包
		2.闭包到底是什么？
		  使用chrome调试查看
		  理解一：闭包是嵌套的内部函数(绝大部分人)
		  理解二：包含被引用变量(函数)的对象(极少数人)
		  注意：闭包存在于 嵌套的内部函数中
		3.产生闭包的条件？
		  函数嵌套
		  内部函数引用了外部函数的数据(变量/函数) -->
		
		<script type="text/javascript">
			function fn1(){
				var a = 2
				var b = 'abc'
				function fn2(){//执行函数定义就会产生闭包(不用调用内部函数)
					console.log(a)
				}
				fn2()
			}
			fn1()
		</script>
		
	</body>
</html>
